package com.ruoyi.system.domain.base;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.entity.SysDept;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * @description:
 * @author: zhengxiong.jiang
 * @createDate: 2023/2/2
 * @version: 1.0
 */
@Data
public class ShopConfigDTO implements Serializable {

    private static final long serialVersionUID=1L;

    /** 工厂id */
    @Excel(name = "工厂id")
    private Long shopId;

    /** 父工厂id */
    @Excel(name = "父工厂id")
    private Long parentId;

    /** 祖级列表 */
    @Excel(name = "祖级列表")
    private String ancestors;

    /** 工厂名称 */
    @Excel(name = "工厂名称")
    private String shopName;

    /** 显示顺序 */
    @Excel(name = "显示顺序")
    private Long orderNum;

    /** 工厂编码 */
    @Excel(name = "工厂编码")
    private String shopCode;

    /** 工厂状态（0正常 1停用） */
    @Excel(name = "工厂状态" , readConverterExp = "0=正常,1=停用")
    private String status;

    /** 删除标志（0代表存在 2代表删除） */
    private String delFlag;

    /** 父工厂名称 */
    private String parentName;

    /** 子工厂 */
    private List<ShopConfigDTO> children = new ArrayList<ShopConfigDTO>();

    /** 创建者 */
    private String createBy;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    /** 更新者 */
    private String updateBy;

    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新时间")
    private Date updateTime;

}
